﻿/***************************************************************************
    Copyright (c) Microsoft Corporation. All rights reserved.
    This code is licensed under the Visual Studio 
    Visualization and Modeling SDK license terms.

    THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
    ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
    IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
    PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
***************************************************************************/
namespace Microsoft.VisualStudio.ArchitectureTools.CodeRepositoryQuery
{
    /// <summary>
    /// Kind of Type signature
    /// </summary>
    public enum TypeSignatureArgumentKind
    {
        /// <summary>
        ///  TypeSignatureArgument.Type should not be null
        /// </summary>
        ClassOrInterface = 1,

        /// <summary>
        /// TypeSignatureArgument.ContainingTypeSignature should not be null
        /// </summary>
        Nesting = 2,

        /// <summary>
        /// TypeSignatureArgument.boundGenericTypeParameter shoud not be null
        /// </summary>
        GenericTypeParameterBinding = 3,

        /// <summary>
        /// TypeSignatureArgument.BoundMethodGenericTypeParameter shoud not be null
        /// </summary>
        GenericMethodTypeParameterBinding = 4

    }
}
